]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
lint: Add "legacy" configuration
authorFlorian Müllner <fmuellner@gnome.org>
Mon, 28 Jan 2019 00:45:10 +0000 (01:45 +0100)
committerGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>
Fri, 12 Jul 2019 16:01:07 +0000 (16:01 +0000)
Regarding coding style, gjs is moving in a direction that departs quite
significantly from the established style, in particular when indenting
multi-line array/object literals or method arguments:

Currently we are keeping those elements aligned, while the gjs rules now
expect them to use the regular 4-space indentation.

There are certainly good arguments that can be made for that move - it's
much less prone to leading to overly-long lines, and matches popluar JS
styles elsewhere. But switching coding style implies large diffs which
interfere with git-blame and friends, so in order to allow for a more
gradual change, add a separate set of "legacy" rules that match more
closely the style we would expect up to now.

It also disables the rules for quotes and template strings - the former
because we cannot match the current style to use double-quotes for
translatable strings and single-quotes otherwise, the latter because
template strings are still relatively new, so we haven't adopted them
yet.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/609

lint/eslintrc-legacy.json [new file with mode: 0644]

diff --git a/lint/eslintrc-legacy.json b/lint/eslintrc-legacy.json
new file mode 100644 (file)
index 0000000..462607e
--- /dev/null
@@ -0,0 +1,21 @@
+{
+    "rules": {
+        "indent": [
+            "error",
+            4,
+            {
+                "ignoredNodes": [
+                    "ConditionalExpression",
+                    "CallExpression > ArrowFunctionExpression",
+                    "CallExpression[callee.object.name=GObject][callee.property.name=registerClass] > ClassExpression:first-child"
+                ],
+                "CallExpression": { "arguments": "first" },
+                "ArrayExpression": "first",
+                "ObjectExpression": "first",
+                "MemberExpression": "off"
+            }
+        ],
+        "prefer-template": "off",
+        "quotes": "off"
+   }
+}